// 具体的接口请求方法
import request from '@/utils/request'

// 注册接口
export const registerAPI = ({ username, password, repassword }) => {
  // 原地是一个Promise对象(内部包含原生ajax请求)
  return request({
    url: '/api/reg',
    method: 'POST',
    data: {
      username,
      password,
      repassword
    }
  })
}
// 登录接口
export const loginAPI = ({ username, password }) => {
  return request({
    url: '/api/login',
    method: 'POST',
    data: {
      username,
      password
    }
  })
}
// 获取-用户基本资料
export const getUserInfoAPI = () => {
  return request({
    url: '/my/userinfo'
  })
}
// 获取-侧边栏数据
export const getMenusListAPI = () => {
  return request({
    url: '/my/menus'
  })
}
// 更新-用户基本资料
export const updateUserInfoAPI = ({ id, username, nickname, email, user_pic }) => {
  return request({
    url: '/my/userinfo',
    method: 'PUT',
    data: {
      id,
      username,
      nickname,
      email,
      user_pic
    }
  })
}
// 更新-用户头像
export const updateUserAvatarAPI = (avatar) => {
  return request({
    url: '/my/update/avatar',
    method: 'PATCH',
    data: {
      avatar // 头像base64字符串
    }
  })
}
// 更新-用户密码
export const updatePwdAPI = ({ old_pwd, new_pwd, re_pwd }) => {
  return request({
    url: '/my/updatepwd',
    method: 'PATCH',
    data: {
      old_pwd,
      new_pwd,
      re_pwd
    }
  })
}
// 获取-文章分类
export const getArtCateListAPI = () => {
  return request({
    url: '/my/cate/list'
  })
}
// 增加-文章分类
export const saveArtCateAPI = ({ cate_name, cate_alias }) => {
  return request({
    url: '/my/cate/add',
    method: 'POST',
    data: {
      // 文章分类名字
      cate_name,
      // 文章分类别名
      cate_alias
    }
  })
}
// 更新-文章分类
export const updateArtCateAPI = ({ id, cate_name, cate_alias }) => {
  return request({
    url: '/my/cate/info',
    method: 'PUT',
    data: {
      id,
      cate_name,
      cate_alias
    }
  })
}
// 删除-文章分类
export const delArtCateAPI = (id) => {
  return request({
    url: '/my/cate/del',
    method: 'DELETE',
    params: {
      id
    }
  })
}
// 发布-文章
export const uploadArticleAPI = (fd) => {
  return request({
    url: '/my/article/add',
    method: 'POST',
    data: fd // 这里是一个FormData(表单数据对象)
  })
}
// 获取-文章列表
export const getArtListAPI = ({ pagenum, pagesize, cate_id, state }) => {
  return request({
    url: '/my/article/list',
    params: {
      // 当前页码数
      pagenum,
      // 当前页面需要的数据条数
      pagesize,
      // 文章分类id(注意不是文章id)
      cate_id,
      // 文章状态("已发布"和"草稿")2种值
      state
    }
  })
}
// 获取-文章详情
export const getArtDetailAPI = (id) => {
  return request({
    url: '/my/article/info',
    params: {
      // 文章id
      id
    }
  })
}
// 删除-文章
export const delArticleAPI = (id) => {
  return request({
    url: '/my/article/info',
    method: 'DELETE',
    params: {
      // 文章id
      id
    }
  })
}
